The disclosed invention is directed to a technique for emulating a three-dimensional computer input controller device with a two-dimensional computer input controller device.
The advances in computer graphics have extended the range of capabilities for the user. Objects can now be displayed in three-dimensional (3-D) representation, for example in wireframe, solid and/or shaded forms.
While a 3-D trackball input controller device has been utilized for directly manipulating objects displayed in 3-D representation, it is complex and expensive.
Various techniques utilizing 2-dimensional input controllers such as a mouse have been developed for manipulating objects displayed in 3-D representation.
A known technique utilizes graphically displayed X, Y and Z sliders which are adjusted by the user (for example, with an input controller such as a mouse) to indicate the amount of rotation about each axis independently. Typically, only one slider is adjusted at any given time.
Another known technique involves the menu selection of the axis about which rotation is desired. An input controller such as a mouse is then moved in one dimension to indicate the amount of rotation.
Still another technique involves holding down one of three buttons on a mouse or a keyboard to select the axis of rotation, and then moving a mouse in one dimension to indicate the amount of rotation.
An important consideration with known techniques for manipulating displayed objects represented in 3-D form is the lack of kinesthetic correspondence (or stimulus-response compatibility) between the movement of the input controller device and the direction of object rotation. That is, the required movement of the input controller device does not provide the sense of actually rotating the displayed object.
A further consideration with known 2-D input controller techniques for manipulating 3-D objects is the lack of capability of continuously varying the axis of rotation in 3-space. For example, with the graphical slider technique, the axis for any given rotation is constrained one of the orthogonal axes.
Another consideration with known techniques is inability to provide rotation about an arbitrary axis that includes X, Y and Z components.